Optimisation in behavioural synthesis using hierarchical expansion: module ripping
نویسنده
چکیده
During behavioural synthesis, an abstract functional description of a system is mapped automatically onto a physical structure. In a competitive setting, this mapping will be highly optimised the dataflow is re-arranged, units and registers are multiplexed and so on to deliver a final structure that meets some overall user supplied specification. Ultimately, however, the physical functional units are drawn from some predefined (human designed) library these may be thought of as the leaf-level modules in the design hierarchy. Design re-use and increasing sophistication of module libraries inevitably leads to leaf modules becoming larger and more complex. As these modules are, by definition, atomic, a synthesis system is unable to capitalise on any internal similarities the leaf modules may possess. This paper describes the design, construction and effects of using a hierarchically defined module library. The set of leaf-level modules made available to the synthesis environment is conventional add, subtract, multiply and so on but the optimiser is capable of ‘ripping apart’ these modules to manipulate their inner structures. Two advantages accrue from this technique: (1) it is possible to optimise behavioural designs far more effectively, with up to a 65% reduction in area, and a 46% reduction in delay reported, and (2) it is possible to build library modules that have tightly controllable internal timing relationships. This is essential when designing systems that communicate externally via low-level protocols, but behavioural synthesis, by its very nature, usually distorts timing information. Using this technique, it is possible to create ‘islands of fixed timing’ embedded in the synthesised design.
منابع مشابه
Source level optimisation of VHDL for behavioural synthesis
Optimisation in high level behavioural synthesis is usually performed by applying transforms to the datapath and control graphs. An alternative approach, however, is to apply transforms at a higher level in the process, specifically directly to the behavioural source description. This technique is analogous to the way in which the source code of a conventional sequential programming language ma...
متن کاملCreating a behavioural classification module for acceleration data: using a captive surrogate for difficult to observe species.
Distinguishing specific behavioural modes from data collected by animal-borne tri-axial accelerometers can be a time-consuming and subjective process. Data synthesis can be further inhibited when the tri-axial acceleration data cannot be paired with the corresponding behavioural mode through direct observation. Here, we explored the use of a tame surrogate (domestic dog) to build a behavioural ...
متن کاملThe Effect of Corporate Governance Mechanisms on Audit Quality by Explaining the Intermediary Function of Auditor's Behavioral Components
The purpose of this study was to investigate the structural pattern of the effect of corporate governance mechanisms (internal organization) on audit quality considering the role of the intermediary variable of behavioural components of auditors. The statistical population of this research is independent auditors and auditors working in audit firms. A sample of 395 people was selected by simple...
متن کاملThe NLPRIR Entity Linking System at TAC 2012
In this paper, we describe our KBP Entity Lining system at TAC 2012. Our system consists of three modules. 1) Query expansion and candidate entity selection module. In this module, we identify all the possible entities for an entity mention through a variety knowledge sources. 2) Entity disambiguation module. In this module, we use a maximum margin approach to rank the candidate entity. 3) NIL ...
متن کاملThe CASIA Entity linking System at TAC 2013
In this paper, we describe our entity linking system at TAC-KBP 2013. Our system consists of four modules. 1) Query expansion module. 2) Candidate generation module. 3) Candidate Entity disambiguation module. 4) NIL clustering module. First, we expand the queries with the information of the query documents. Then we find the candidates of queries from the Knowledge Base using the WikiPedia knowl...
متن کامل